Skip to content

fix[notask]: remove NPM_TOKEN usage from sdk publish workflow#1849

Merged
NamelsKing merged 1 commit into
tetherto:mainfrom
NamelsKing:sdk-fix-publish
May 1, 2026
Merged

fix[notask]: remove NPM_TOKEN usage from sdk publish workflow#1849
NamelsKing merged 1 commit into
tetherto:mainfrom
NamelsKing:sdk-fix-publish

Conversation

@NamelsKing

Copy link
Copy Markdown
Contributor

Note: be concise and prefer bullet points.

🎯 What problem does this PR solve?

  • SDK npm publish on release-sdk-* was failing because the workflow still wired NPM_TOKEN into .npmrc / bunfig.toml during build, even though the publish step migrated to npm trusted publishing in DEVOPS-2062: refactor to use npm trusted publishing and remove NPM_TOKEN #1618 (DEVOPS-2062).
  • Trusted publishing requires Node ≥ 22.14 / npm ≥ 11.5.1 and an OIDC id-token; the legacy NPM_TOKEN is now unnecessary noise that obscures the real auth path.

📝 How does it solve it?

  • Drop NPM_TOKEN: ${{ secrets.NPM_TOKEN }} (and the dead GPR_TOKEN) from the build job's "Configure scoped registry" step.
  • Remove //registry.npmjs.org/:_authToken=${NPM_TOKEN} from the generated .npmrc.
  • Remove the @qvac scope override from the generated bunfig.toml (default registry already points at registry.npmjs.org/, and @qvac/* packages are public on npm so no token is needed for reads).
  • Keep @tetherto / GitHub Packages auth (GIT_PAT / READ_NPM_TOKEN) intact — those packages are private on GHP.

🧪 How was it tested?

  • Verified @qvac/sdk is publicly readable on registry.npmjs.org/ without auth (npm view @qvac/sdk resolves anonymously), so the SDK's @qvac/* deps install fine without a token.
  • Reference: DEVOPS-2062: refactor to use npm trusted publishing and remove NPM_TOKEN #1618 (DEVOPS-2062) successfully publishes other addons (e.g. diffusion-cpp) through the same trusted-publishing path with Node 24.14.1 / npm 11.11.0.

Note

This fix needs to also land on release-sdk-0.10.0 for Monday's SDK release. Cherry-pick after merge.

The publish step now uses npm trusted publishing (OIDC), so the legacy
NPM_TOKEN auth in the build step's .npmrc and bunfig.toml is no longer
needed. @qvac/* packages on npmjs.org are public, so anonymous reads
work for installs.

Aligns with #1618 (DEVOPS-2062) which migrated the publish step to
trusted publishing but left the build-step NPM_TOKEN references in
place.
@NamelsKing NamelsKing requested review from a team as code owners May 1, 2026 09:04
@NamelsKing

Copy link
Copy Markdown
Contributor Author

/review

@github-actions

github-actions Bot commented May 1, 2026

Copy link
Copy Markdown
Contributor

Tier-based Approval Status

**PR Tier:** TIER1

**Current Status:** ✅ APPROVED

**Requirements:**
- 1 Team Member approval ✅ (1/1)
- 1 Team Lead OR Management approval ✅ (1/1)



---
*This comment is automatically updated when reviews change.*

@NamelsKing

Copy link
Copy Markdown
Contributor Author

/review

@NamelsKing NamelsKing merged commit d2688ec into tetherto:main May 1, 2026
3 of 5 checks passed
Proletter pushed a commit that referenced this pull request May 24, 2026
The publish step now uses npm trusted publishing (OIDC), so the legacy
NPM_TOKEN auth in the build step's .npmrc and bunfig.toml is no longer
needed. @qvac/* packages on npmjs.org are public, so anonymous reads
work for installs.

Aligns with #1618 (DEVOPS-2062) which migrated the publish step to
trusted publishing but left the build-step NPM_TOKEN references in
place.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants